#ifndef DEBUGBENCH_H
#define DEBUGBENCH_H

#include <map>
#include <string>

class DebugBench {

public:
	void LaunchBench();
	void BenchMoveGeneration(map<string,string> & simplePositionsDB);
	void BenchSimplePositionsDB(map<string,string> & simplePositionsDB);
	void BenchMediumPositionsDB(map<string,string> & mediumPositionsDB);
	void BenchComplexPositionsDB(map<string,string> & complexPositionsDB);

	void initSimplePositionsDB(map<string,string> & simplePositionsDB);
	void initMediumPositionsDB(map<string,string> & mediumPositionsDB);
	void initComplexPositionsDB(map<string,string> & complexPositionsDB);

	//float Mean(vector<float> results);
	double Mean(vector<double> results);
	void BenchSetFenPerfs();
	void BenchGetLegalMovesPerfs();
};



#endif